# 使用Alpine Linux作为基础镜像
FROM alpine:latest

# 安装必要的工具和编译依赖
RUN apk add --no-cache --update bash curl git python3 make gcc g++ linux-headers

# 设置NVM环境变量
ENV NVM_DIR /root/.nvm

# 安装NVM并立即安装Node.js
RUN curl -o- https://gitee.com/mirrors/nvm/raw/master/install.sh | bash \
    && echo 'export NVM_DIR="$HOME/.nvm"' >> /root/.bashrc \
    && echo '[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"' >> /root/.bashrc \
    && source $NVM_DIR/nvm.sh \
    && nvm install --lts \
    && nvm use --lts \
    && nvm alias default lts/* \
    # 设置npm镜像
    && npm config set registry https://registry.npmmirror.com \
    # 清理
    && apk del curl git make gcc g++ linux-headers \
    && rm -rf $NVM_DIR/.cache /var/cache/apk/*

# 确保Node.js命令可用
ENV PATH $NVM_DIR/versions/node/$(ls $NVM_DIR/versions/node | sort -V | tail -1)/bin:$PATH

# 设置工作目录
WORKDIR /app

# 默认启动bash
CMD ["/bin/bash"]